package com.lai.hospital.vo;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import java.util.Date;

/**
 * @author : lai
 * @version V1.0
 * @Project: hospital-springboot
 * @Package com.lai.hospital.dto
 * @Description: 预约VO
 * @date Date : 2023年02月18日 14:37
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@ApiModel(value = "预约信息")
public class AppointmentVO {

    private Integer id;

    /**
     * 用户就诊人id
     */
    @NotBlank(message = "就诊人id不能为空")
    @ApiModelProperty(name = "patientId", value = "就诊人id", required = true, dataType = "Integer")
    private Integer patientId;
    /**
     *患者姓名
     */
    private String patientName;
    /**
     *身份证号
     */
    private String idNumber;

    /**
     * 医院id
     */
    private Integer hospitalId;

    /**
     * 医院名称
     */
    private String hospitalName;

    /**
     * 科室id
     */
    @NotBlank(message = "就诊人id不能为空")
    @ApiModelProperty(name = "userPatientId", value = "就诊人id", required = true, dataType = "String")
    private Integer departmentId;

    /**
     * 科室名称
     */
    private String departmentName;

    /**
     * 医生id
     */
    @NotBlank(message = "医生id不能为空")
    @ApiModelProperty(name = "doctorId", value = "医生id", required = true, dataType = "Integer")
    private Integer doctorId;

    /**
     * 预约时间
     */
    @NotBlank(message = "预约时间不能为空")
    @ApiModelProperty(name = "appointmentTime", value = "预约时间", required = true, dataType = "Date")
    private Date appointmentTime;

    /**
     * 医生id
     */
    @NotBlank(message = "时间段不能为空")
    @ApiModelProperty(name = "timeQuantum", value = "时间段", required = true, dataType = "Integer")
    private Integer timeQuantum;

    /**
     * 预约状态
     */
    @ApiModelProperty(name = "appointmentStatus", value = "预约状态", required = true, dataType = "Integer")
    private Integer appointmentStatus;

    /**
     * 医生名称
     */
    private String doctorName;
    /**
     * 职称
     */
    private String professional;

    /**
     * 位置
     */
    private String location;


}
